<!--登录页-->
<template>
  <div style="height:100vh;background-image:linear-gradient(135deg,rgba(242,212,19,0.16),rgba(60,130,245,0.19));overflow:hidden;">
    <el-container style="padding:30px;">
      <el-header>
        <el-row :gutter="10">
          <el-col :span="1">
            <img src="@/img/login/logo.jpeg" style="height: 50px;">
          </el-col>
          <el-col :span="3">
            <img src="@/img/login/auto.jpg" style="height: 50px;">
          </el-col>
          <el-col :span="1">
            <img src="@/img/login/man.jpeg" style="height: 50px;">
          </el-col>
          <el-col :span="19">
            <span style="color:#fff;font-size:30px;font-weight:bold;">AllInOne后台管理管理系统</span>
          </el-col>
        </el-row>
      </el-header>
      <el-main>
        <el-row :gutter="40">
          <el-col :span="16">
            <img src="@/img/login/bg.jpeg" style="width:100%;margin-top:60px;">
          </el-col>
          <el-col :span="8">
            <el-card style="margin-top:80px;">
              <h3 style="text-align:center;">用户登录</h3>
              <el-form label-position="top">
                <el-form-item label="用户名">
                  <el-input placeholder="请输入用户名" v-model="user.userName"></el-input>
                </el-form-item>
                <el-form-item label="密码">
                  <el-input placeholder="请输入密码" type="password" v-model="user.password"></el-input>
                </el-form-item>
                <el-form-item>
                  <el-button type="primary" style="width:100%;" @click="login">登录</el-button>
                </el-form-item>
              </el-form>
              <div style="color:#666;text-align:center;font-size:14px;padding:10px 0;">
                (体验账号:123 密码:123)
              </div>
            </el-card>
          </el-col>
        </el-row>
      </el-main>
    </el-container>
  </div>
</template>

<script setup>
import {ref} from "vue";
import axios from "axios";
import {ElMessage} from "element-plus";
import router from "@/router";

const user = ref({userName:'',password:''});
const login = ()=>{
  //console.log(user.value);
  //向后端发登录请求
  axios.post('http://localhost:9091/v1/user/login',user.value)
      .then((response)=>{
        //回调函数：后端服务器响应后执行此处代码
        //response里装着响应内容，我们通过response.data得到服务器响应的数据
        console.log(response.data);
        if(response.data.code === 2001){
          ElMessage.success('登录成功!');
          //localStorage只能存字符串类型的键值对
          console.log(response.data);//后端返回的JsonResult
          console.log(response.data.data);//JsonResult中的data也就是userVO
          console.log(JSON.stringify(response.data.data));//将JS对象转为JSON字符串
          //登录成功后,将后端返回的当前用户信息存入localStorage中
          localStorage.setItem('user',JSON.stringify(response.data.data));
          //登录成功后会跳转至首页,router/index.js配置了会重定向到/user用户列表页
          router.push('/user');
        }else{
          ElMessage.error(response.data.msg);
          //登录失败清空输入框
          user.value = {userName:'',password:''};
        }
      })
}
</script>

<style scoped>
</style>